package org.geoscrape;

public enum CacheType
{
	TRADITIONAL, MULTI, VIRTUAL, LETTERBOX, EVENT, PROJECTAPE1, 
	MYSTERY, PROJECTAPE2, UNUSED, WEBCAM, GCHQ, CITO, WHERIGO, 
	EARTH_CACHE, LOST_AND_FOUND_EVENT, MEGA_EVENT, OWN, FOUND, GPSADVENTURE,BENCHMARK,

	// estimates from map images
	ESTIMATE_TRAD(true), ESTIMATE_MYST(true), ESTIMATE_VIRT(true), ESTIMATE_EVENT(true),

	/**
	 * There are multiple overlapping caches at this location, can't determine
	 * type.
	 */
	MULTIPLE_CACHES_AT_LOCATION(true);

	/**
	 * NB: There is no small or medium estimate for multis, found, and owned.
	 * 
	 * These caches have their own unique icon regardless of zoom level.
	 * 
	 */

	/**
	 * True if the cache type is estimated
	 */
	private boolean estimated;

	CacheType()
	{

	}

	CacheType(boolean estimated)
	{
		this.estimated = estimated;
	}

	public boolean isEstimated()
	{
		return this.estimated;
	}

	/**
	 * @return
	 */
	public String getDescription()
	{
		String res = toString();
		switch (this)
		{
			case TRADITIONAL:
				res = "Traditional Cache";
				break;
			case EARTH_CACHE:
				res = "Earthcache";
				break;
			case MULTI:
				res = "Multi-cache";
				break;
			case MYSTERY:
				res = "Unknown Cache";
				break;
			case WEBCAM:
				res = "Webcam Cache";
				break;
			case WHERIGO:
				res = "Wherigo Cache";
				break;
			case VIRTUAL:
				res = "Virtual Cache";
				break;
			case EVENT:
				res = "Event Cache";
				break;
			case PROJECTAPE1:
			case PROJECTAPE2:
				res = "Project Ape Cache";
				break;
			default:
				break;

		}
		return res;
	}
}
